home *** CD-ROM | disk | FTP | other *** search
/ Acorn RISC PD-CD 1 / Acorn RISC PD-CD 1.iso / languages / c / _desklibsm / h / sprite < prev    next >
Encoding:
Text File  |  1993-05-26  |  2.0 KB  |  60 lines

  1.  
  2. #ifndef __dl_sprite_h
  3. #define __dl_sprite_h
  4. #ifndef __dl_core_h
  5. #include "Core.h"
  6. #endif
  7. #define spritepool_SYSTEM 0
  8. #define spritepool_WIMP   1
  9. typedef struct sprite_info     *sprite;
  10. typedef struct sprite_areainfo *sprite_area;
  11. typedef struct {
  12.     int          callno ;
  13.     sprite_area  spritearea ;
  14.     sprite       sprite ;
  15.     void         *savearea ;
  16. } sprite_outputstate ;
  17. typedef struct {
  18.     unsigned int areasize ;
  19.     unsigned int numsprites ;
  20.     unsigned int firstoffset ;
  21.     unsigned int freeoffset ;
  22. } sprite_areainfo ;
  23. typedef struct {
  24.     unsigned int width ;
  25.     unsigned int height ;
  26.     unsigned int maskstatus ;
  27.     unsigned int mode ;
  28. } sprite_info ;
  29.  
  30. extern os_error *Sprite_ScreenSave(char *filename, BOOL savepalette);
  31.  
  32. extern os_error *Sprite_ScreenLoad(char *filename);
  33.  
  34. extern os_error *Sprite_InitArea(sprite_area area);
  35.  
  36. extern os_error *Sprite_Load(sprite_area area, char *filename) ;
  37.  
  38. extern os_error *Sprite_Merge(sprite_area area, char *filename);
  39.  
  40. extern os_error *Sprite_Save(sprite_area area, char *filename);
  41. extern os_error *Sprite_Create(sprite_area area, char *name, int haspalette,
  42.                                int width, int height, int screenmode);
  43. extern os_error *Sprite_Delete(sprite_area area, char *name);
  44. extern os_error *Sprite_Rename(sprite_area area, char *oldname, char *newname);
  45. extern os_error *Sprite_Copy(sprite_area area, char *oldname, char *newname);
  46. extern os_error *Sprite_Get(sprite_area area, char *name, int with_palette,
  47.                             int left, int bottom, int right, int top,
  48.                             sprite *sprite_ptr);
  49. extern os_error *Sprite_Plot(sprite_area area, char *name,  
  50.                              int x, int y, int plot_action);
  51.  
  52. extern os_error *Sprite_ReadInfo(sprite_area area, char *name,
  53.                                  sprite_info *info);
  54.  
  55. extern os_error *Sprite_Redirect(sprite_area area, char *name,
  56.                                  void *savearea, sprite_outputstate *oldstate);
  57.  
  58. extern os_error *Sprite_UnRedirect(sprite_outputstate *oldstate);
  59. #endif
  60.